/**
 * 1、什么是函数
 *    函数是指一段可以直接被另一段程序或代码引用的程序或代码
 * 
 * 2、函数的作用
 *    一个较大的程序一般应分为若干个程序块，每一个模块用来实现一个特定的功能。
 *    函数就是用来实现一个特定功能的程序块，以便于让其它程序或代码来使用。
 * 
 * 3、定义函数
 *    (1)、采用"函数声明"方式定义函数
 *    (2)、采用"函数表达式"方式定义函数
 *    ......
 * 
 * 4、调用函数
 *    (1)、通过函数名称来调用函数
 *    ......
 */


/**
 * 用来打豆浆的函数 ( 采用"函数声明"方式定义函数 )
 * @param water 打豆浆时必须有水
 * @param beans 打豆浆时需要有豆子，豆子可能是多种，也可能没有
 */
function soybeanMilk(water, ...beans) { // 参数 water 、beans 只能在函数内使用
    // 在函数内声明的变量应该尽量保证该变量只能在函数内使用
    // 声明变量时优先使用 const 关键字，其次是使用 let 关键字，最后才考虑 var 关键字
    let result = `豆浆 ( ${water} | ${beans} )`;
    console.log('高速旋转，打碎豆子，煮开豆浆');
    // 通过 return 语句将函数内部的处理结果带出给函数调用者
    return result;
}

let result; // 声明一个变量用来接受函数的返回结果

result = soybeanMilk('水', '黄豆'); // 通过函数名来调用函数并获取返回值
console.log(result); // 注意，这里的 result 并不是 函数内声明的 result

result = soybeanMilk('水', '黄豆', '绿豆', '核桃');
console.log(result);

result = soybeanMilk('水', '牛肉', '皮蛋', '葱花');
console.log(result);